package com.ruoyi.system.api.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;

/**
 * 申请明细对象 pcm_application_detail
 * 
 * @author liyang
 * @date 2023-11-22
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PcmApplicationDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 明细id */
    private Long detailId;

    /** 采购申请编号 */
    @Excel(name = "采购申请编号")
    private String purchaseRequestNumber;

    @Excel(name = "采购类型")
    private Integer typePurchase;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请日期",dateFormat = "yyyy-MM-dd")
    private Date applicationDate;

    /** 申请人id */
    private Integer person;

    @Excel(name = "申请人")
    private String personName;

    @Excel(name = "申请部门")
    private String deptName;

    /** 产品编号 */
    @Excel(name = "产品编号")
    private String productNumber;

    /**产品名称*/
    @Excel(name = "产品名称")
    private String productName;

    /** 单位 */
    private Integer productUnit;

    /**产品表*/
    @Excel(name = "产品信息")
    private PcmMaterialRecord pcmMaterialRecord;

    /** 需求行号 */
    @Excel(name = "需求行号")
    private Long demandLineNumber;

    /** 需求数量 */
    @Excel(name = "需求数量")
    private Long requiredQuantity;

    /** 期望到货日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "期望到货日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expectedDeliveryDate;

    /** 期望供应商ID */
    private Integer expectedSupplier;

    /** 期望供应商名称 */
    @Excel(name = "期望供应商")
    private String expectedSupplierName;

    /** 供应商状态 */
    @Excel(name = "供应商状态")
    private Long supplierStatus;

    /** 需求行号状态 */
    @Excel(name = "需求行号状态")
    private Long demandLineStatus;

    /** 申请单id */
    @Excel(name = "申请单id")
    private Long requestId;

    /** 询报价需求申请编号 */
    @Excel(name = "询报价需求申请编号")
    private String inquiryDemandNumber;

    private PcmSupplier pcmSupplier;
}
